Adaptive video streaming is a method by which a receiving device or system selects a bitstream from among a set of bitstreams, each representing the same video interval, where the selected bitstream represents the highest quality level that can be sustained by the communications infrastructure and display. Each bitstream in the set of bitstreams may represent a different level, where a higher level corresponds to a higher bitrate and resolution. As a result, the bitstream at a higher level requires more processing time than the bitstream at a next lower level.
Not all platforms will have sufficient processing power to decode, with sufficient speed, the level that can be sustained by the network and display, however. Most notably, low powered personal computers (PCs) (such as laptops and older desktop PCs) may struggle with processing bitstreams at such a level. Furthermore, some computers, especially laptops, use dynamic frequency scaling. This allows the frequency of the central processing unit (CPU) to adapt, depending on the heat and power properties. This will affect the available processing power as well, possibly making it difficult for a computer to handle a bitstream level that is chosen on the basis of network and display capabilities. In addition, the CPUs may be shared with other running processes (programs), which reduces the available processing capacity for video processing. Therefore, the selection of a particular bitstream in an adaptive streaming system needs to consider the available processing power.
In the drawings, the leftmost digit(s) of a reference number identifies the drawing in which the reference number first appears.